//
//  UIImageViewExtenstions.swift
//  Photo Editor
//
//  Created by Mohamed Hamed on 5/10/17.
//
//

import Foundation
import UIKit

extension UIImageView {

    func alphaAtPoint(_ point: CGPoint) -> CGFloat {

        var pixel: [UInt8] = [0, 0, 0, 0]
        let colorSpace = CGColorSpaceCreateDeviceRGB()
        let alphaInfo = CGImageAlphaInfo.premultipliedLast.rawValue

        guard let context = CGContext(data: &pixel, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4, space: colorSpace, bitmapInfo: alphaInfo) else {
            return 0
        }

        context.translateBy(x: -point.x, y: -point.y)

        layer.render(in: context)

        let floatAlpha = CGFloat(pixel[3])

        return floatAlpha
    }

}
